import numpy as np

#---------------------------------------------------------------------------

P = []

P.append(np.array([[1,  0,  0], 
                   [1,  0,  0], 
                   [1,  0,  0]]))

P.append(np.array([[0,  1,  0], 
                   [0,  1,  0], 
                   [0,  1,  0]]))

P.append(np.array([[0,  0,  1], 
                   [0,  0,  1], 
                   [0,  0,  1]]))

P_stubborn_3 = P

#---------------------------------------------------------------------------

P = []

P.append(np.array([[1,  0,  0], 
                   [0,  1,  0], 
                   [0,  0,  1]]))

P.append(np.array([[1,  0,  0], 
                   [0,  1,  0], 
                   [0,  0,  1]]))

P.append(np.array([[1,  0,  0], 
                   [0,  1,  0], 
                   [0,  0,  1]]))

P_ass_strict_3 = P

#---------------------------------------------------------------------------

epsilon = 0.1

P = []

P.append(np.array([[1,          0,        0], 
                   [1-epsilon,  epsilon,  0], 
                   [1-epsilon,  0,        epsilon]]))

P.append(np.array([[epsilon,  1-epsilon,  0], 
                   [0,        1,          0], 
                   [0,        1-epsilon,  epsilon]]))

P.append(np.array([[epsilon,  0,        1-epsilon], 
                   [0,        epsilon,  1-epsilon], 
                   [0,        0,        1]]))

P_ass_strict_confidence_3 = P

#---------------------------------------------------------------------------

P = []

P.append(np.array([[0.99,  0.01,  0], 
                   [0.95,  0.05,  0], 
                   [0.9,   0.07,  0.03]]))

P.append(np.array([[0.1,   0.9,   0], 
                   [0.01,  0.98,  0.01], 
                   [0,     0.9,   0.1]]))

P.append(np.array([[0.03,  0.07,  0.9], 
                   [0,     0.05,  0.95], 
                   [0,     0.01,  0.99]]))

P_ass_smooth_3 = P

               
#---------------------------------------------------------------------------


"""

P.append(np.array([[0.95, 0.05, 0], 
                   [0.93, 0.06, 0.01], 
                   [0.9,  0.07, 0.03]]))

P.append(np.array([[0.15, 0.85,  0], 
                   [0.05, 0.9,   0.05], 
                   [0,    0.85,  0.15]]))

P.append(np.array([[0.03, 0.07, 0.9], 
                   [0.01, 0.06, 0.93], 
                   [0,    0.05, 0.95]]))

"""    

#---------------------------------------------------------------------------

P = []

P.append(np.array([[1,  0,  0], 
                   [0,  1,  0], 
                   [0,  0,  1]]))

P.append(np.array([[1,  0,  0], 
                   [0,  1,  0], 
                   [0,  0,  1]]))

P.append(np.array([[0.001,  0.082,  0.917], 
                   [0.001,  0.07,   0.929], 
                   [0.001,  0.054,  0.945]]))

P_ass_two_clusters_3 = P

#---------------------------------------------------------------------------

P = []

P.append(np.array([[0.99,  0.01,  0,     0,     0], 
                   [0.97,  0.03,  0,     0,     0], 
                   [0.94,  0.04,  0.02,  0,     0], 
                   [0.91,  0.05,  0.03,  0.01,  0], 
                   [0.87,  0.06,  0.04,  0.02,  0.01]]))

P.append(np.array([[0.03,  0.97,  0,     0,      0], 
                   [0.01,  0.98,  0.01,  0,      0], 
                   [0,     0.97,  0.03,  0,      0], 
                   [0,     0.94,  0.04,  0.02,   0], 
                   [0,     0.91,  0.05,  0.03,   0.01]]))

P.append(np.array([[0.02,  0.04,  0.94,  0,     0], 
                   [0,     0.03,  0.97,  0,     0], 
                   [0,     0.01,  0.98,  0.01,  0], 
                   [0,     0,     0.97,  0.03,  0], 
                   [0,     0,     0.94,  0.04,  0.02]]))

P.append(np.array([[0.01,  0.03,  0.05,  0.91,  0], 
                   [0,     0.02,  0.04,  0.94,  0], 
                   [0,     0,     0.03,  0.97,  0], 
                   [0,     0,     0.01,  0.98,  0.01], 
                   [0,     0,     0,     0.97,  0.03]]))

P.append(np.array([[0.01,  0.02,  0.04,  0.06,  0.87], 
                   [0,     0.01,  0.03,  0.05,  0.91], 
                   [0,     0,     0.02,  0.04,  0.94], 
                   [0,     0,     0,     0.03,  0.97], 
                   [0,     0,     0,     0.01,  0.98]]))

P_ass_smooth_5 = P

#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------

p = 1
eps = 0

P = []

P.append(np.array([[1-eps,    eps,  0,  0,  0], 
                   [1-p,      p,    0,  0,  0], 
                   [1-eps,    eps,  0,  0,  0], 
                   [1-eps,    eps,  0,  0,  0], 
                   [1-eps,    eps,  0,  0,  0]]))

P.append(np.array([[p,    1-p,      0,    0,  0], 
                   [eps,  1-2*eps,  eps,  0,  0], 
                   [0,    1-p,      p,    0,  0], 
                   [eps,  1-2*eps,  eps,  0,  0], 
                   [eps,  1-2*eps,  eps,  0,  0]])) 

P.append(np.array([[0,  eps,  1-2*eps,   eps,  0], 
                   [0,  p,    1-p,       0,    0], 
                   [0,  eps,  1-2*eps,   eps,  0], 
                   [0,  0,    1-p,       p,    0], 
                   [0,  eps,  1-2*eps,   eps,  0]]))

P.append(np.array([[0,  0,  eps,  1-2*eps,  eps], 
                   [0,  0,  eps,  1-2*eps,  eps], 
                   [0,  0,  p,    1-p,      0], 
                   [0,  0,  eps,  1-2*eps,  eps], 
                   [0,  0,  0,    1-p,      p]])) 

P.append(np.array([[0,  0,  0,  eps,    1-eps], 
                   [0,  0,  0,  eps,    1-eps], 
                   [0,  0,  0,  eps,    1-eps], 
                   [0,  0,  0,  p,      1-p], 
                   [0,  0,  0,  eps,    1-eps]]))

P_BC_strict_5 = P

#---------------------------------------------------------------------------


p = 0.1
eps = 0

P = []

P.append(np.array([[1-eps,    eps,  0,  0,  0], 
                   [1-p,      p,    0,  0,  0], 
                   [1-eps,    eps,  0,  0,  0], 
                   [1-eps,    eps,  0,  0,  0], 
                   [1-eps,    eps,  0,  0,  0]]))

P.append(np.array([[p,    1-p,      0,    0,  0], 
                   [eps,  1-2*eps,  eps,  0,  0], 
                   [0,    1-p,      p,    0,  0], 
                   [eps,  1-2*eps,  eps,  0,  0], 
                   [eps,  1-2*eps,  eps,  0,  0]])) 

P.append(np.array([[0,  eps,  1-2*eps,   eps,  0], 
                   [0,  p,    1-p,       0,    0], 
                   [0,  eps,  1-2*eps,   eps,  0], 
                   [0,  0,    1-p,       p,    0], 
                   [0,  eps,  1-2*eps,   eps,  0]]))

P.append(np.array([[0,  0,  eps,  1-2*eps,  eps], 
                   [0,  0,  eps,  1-2*eps,  eps], 
                   [0,  0,  p,    1-p,      0], 
                   [0,  0,  eps,  1-2*eps,  eps], 
                   [0,  0,  0,    1-p,      p]])) 

P.append(np.array([[0,  0,  0,  eps,    1-eps], 
                   [0,  0,  0,  eps,    1-eps], 
                   [0,  0,  0,  eps,    1-eps], 
                   [0,  0,  0,  p,      1-p], 
                   [0,  0,  0,  eps,    1-eps]]))

P_BC_strict_confidence_5 = P

#---------------------------------------------------------------------------

P = []

P.append(np.array([[0.99,   0.01,   0,      0,      0], 
                   [0.9,    0.1,    0,      0,      0], 
                   [0.92,   0.06,   0.02,   0,      0], 
                   [0.94,   0.04,   0.015,  0.005,  0], 
                   [0.96,   0.03,   0.005,  0.003,  0.002]]))

P.append(np.array([[0.1,   0.9,   0,     0,      0], 
                   [0.01,  0.98,  0.01,  0,      0], 
                   [0,     0.9,   0.1,   0,      0], 
                   [0,     0.92,  0.06,  0.02,   0], 
                   [0,     0.94,  0.04,  0.015,  0.005]]))

P.append(np.array([[0.02,  0.06,   0.92,  0,     0], 
                   [0,     0.1,    0.9,   0,     0], 
                   [0,     0.01,   0.98,  0.01,  0], 
                   [0,     0,      0.9,   0.1,   0], 
                   [0,     0,      0.92,  0.06,  0.02]]))

P.append(np.array([[0.005,  0.015,  0.04,   0.94,  0], 
                   [0,      0.02,   0.06,   0.92,  0], 
                   [0,      0,      0.1,    0.9,   0], 
                   [0,      0,      0.01,   0.98,  0.01], 
                   [0,      0,      0,      0.9,   0.1]]))

P.append(np.array([[0.002,  0.003,  0.005,  0.03,  0.96], 
                   [0,      0.005,  0.015,  0.04,  0.94], 
                   [0,      0,      0.02,   0.06,  0.92], 
                   [0,      0,      0,      0.1,   0.9], 
                   [0,      0,      0,      0.01,  0.99]]))

P_BC_smooth_confidence_5 = P

#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------

P = []

P.append(np.array([[0.96,   0.04,   0], 
                   [0.942,  0.057,  0.001], 
                   [0.907,  0.091,  0.002]]))

P.append(np.array([[0.04,   0.952,  0.008], 
                   [0.021,  0.969,  0.01], 
                   [0.02,   0.944,  0.036]]))

P.append(np.array([[0.001,  0.082,  0.917], 
                   [0.001,  0.07,   0.929], 
                   [0.001,  0.054,  0.945]]))

P_empirics_3 = P

#---------------------------------------------------------------------------

P = []

P.append(np.array([[0.947,  0.044,  0.008,  0.001,  0], 
                   [0.954,  0.04,   0.006,  0,      0], 
                   [0.938,  0.051,  0.01,   0.001,  0], 
                   [0.911,  0.07,   0.016,  0.003,  0], 
                   [0.919,  0.063,  0.009,  0.009,  0]]))

P.append(np.array([[0.055,  0.872,  0.071,  0.002,  0], 
                   [0.046,  0.898,  0.055,  0.001,  0], 
                   [0.032,  0.893,  0.073,  0.002,  0], 
                   [0.04,   0.859,  0.097,  0.004,  0], 
                   [0.047,  0.858,  0.092,  0.003,  0]]))

P.append(np.array([[0.002,  0.057,  0.919,  0.022,  0], 
                   [0.002,  0.052,  0.935,  0.011,  0], 
                   [0.001,  0.038,  0.943,  0.018,  0], 
                   [0.001,  0.039,  0.913,  0.046,  0.001], 
                   [0.001,  0.043,  0.896,  0.059,  0.001]]))

P.append(np.array([[0.001,  0.002,  0.102,  0.876,  0.019], 
                   [0.001,  0.005,  0.093,  0.886,  0.015], 
                   [0,      0.002,  0.078,  0.905,  0.015], 
                   [0.001,  0.002,  0.068,  0.898,  0.031], 
                   [0.001,  0.003,  0.069,  0.884,  0.043]]))

P.append(np.array([[0,      0,      0.011,  0.097,  0.892], 
                   [0,      0.003,  0.009,  0.081,  0.907], 
                   [0.001,  0.001,  0.006,  0.072,  0.92], 
                   [0,      0.001,  0.006,  0.069,  0.924], 
                   [0.001,  0,      0.005,  0.071,  0.923]]))

P_empirics_5 = P